2023年07月31日
川俣晶の縁側技術関連執筆情報 total 1228 count

ビットで理解するC#の数値入門: 1を足したのになぜ値が増えないの?

Written By: 川俣 晶連絡先

表紙 ビットで理解するC#の数値入門: 1を足したのになぜ値が増えないの?

「これはどういう本だい?」

「C#の数値がどういうビットで表現されているのかを説明する本だ」

「何か特殊な技術でメモリを読み出しちゃうのかい?」

「いや、数値をバイナリーとして見るなら普通のAPIで読み出せるんだ」

「へー」

「というわけで、不思議な変な挙動は全部ビットに秘密があると解説しているのだ」

「変な挙動って?」

「こんなところだな」

  • わざとオーバーフローさせて使う整数
  • 移動する小数点
  • どこにもないのにあると仮定する1という数字
  • 負数の時だけ1つ扱える数値が多い

「不思議だね」

「でも、それは昔からあった。ゲームで所持金が65535を超えると0になるとか。その理由も分かる」

「それもビットで分かるのか」